home *** CD-ROM | disk | FTP | other *** search
Lisp/Scheme | 1988-04-07 | 1.1 KB | 37 lines | [TEXT/ttxt] |
- ;; Larry Mulcahy 1988
- ;; declarations
-
- ; needs STACK
-
- (setq *declared-globals* nil)
-
- ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
- ; macro defvar
- ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
-
- (defmacro defvar (variable-name &optional value)
- `(progn
- (if (not (member ',variable-name *declared-globals*))
- (push ',variable-name *declared-globals*))
- (setq ,variable-name ,value)
- (putprop ',variable-name 'variable 'binding)
- ))
-
- ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
- ; macro defconstant
- ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
-
- (defmacro defconstant (constant-name &optional value)
- `(progn
- (if (not (member ',constant-name *declared-globals*))
- (push ',constant-name *declared-globals*))
- (setq ,constant-name ,value)
- (putprop ',constant-name 'constant 'binding)
- ))
-
- ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
- ; *declared-globals*
- ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
-
- (defvar *declared-globals*)
-